package cn.jiedh.app.meiweidk.Utils.tool;

import android.content.Context;
import android.content.res.Configuration;
import android.content.res.Resources;

public class DisplayUtil {
    /**
     * 将px值转换为dip或dp值，保证尺寸大小不变
     *
     * @param pxValue （DisplayMetrics类中属性density）
     * @return
     */
    public static int px2dip(Context context, float pxValue) {

        final float scale = context.getResources().getDisplayMetrics().density;
        return (int) (pxValue / scale + 0.5f);
    }

    /**
     * 将dip或dp值转换为px值，保证尺寸大小不变
     *
     * @param dipValue
     * @param （DisplayMetrics类中属性density）
     * @return
     */
    public static int dip2px(Context context,float dipValue) {
        final float scale =  context.getResources().getDisplayMetrics().density;
//		LogUtils.i("===","d:"+scale);
        return (int) (dipValue * scale + 0.5f);
    }

    /**
     * 将px值转换为sp值，保证文字大小不变
     *
     * @param pxValue
     * @param （DisplayMetrics类中属性scaledDensity）
     * @return
     */
    public static int px2sp(Context context,float pxValue) {
        final float fontScale =  context.getResources().getDisplayMetrics().scaledDensity;
        return (int) (pxValue / fontScale + 0.5f);
    }

    /**
     * 将sp值转换为px值，保证文字大小不变
     *
     * @param spValue
     * @param （DisplayMetrics类中属性scaledDensity）
     * @return
     */
    public static int sp2px(Context context,float spValue) {
        final float fontScale =  context.getResources().getDisplayMetrics().scaledDensity;
//		LogUtils.i("===","s:"+fontScale);
        return (int) (spValue * fontScale + 0.5f);
    }

    /**
     * 设置字体
     */
    public static void setDefault(Context context) {
        Resources res =  context.getResources();
        Configuration config1 = new Configuration();
        config1.setToDefaults();
        res.updateConfiguration(config1, res.getDisplayMetrics());
    }

}
